home *** CD-ROM | disk | FTP | other *** search
- ******************************************************************************
- *** ***
- *** D.E.R. ST-Player V1.23 ***
- *** ***
- ******************************************************************************
- *** ***
- *** ***
- *** Implemented by: Wolfgang BREYHA ***
- *** Gro▀er Ring 42 ***
- *** 1130 VIENNA ***
- *** AUSTRIA ***
- *** ***
- *** ***
- ******************************************************************************
- *** ***
- *** This Program is FREEWARE and it may be freely distributed if: ***
- *** ***
- *** - The Program, it's Icon and the .doc-Files are all copied ***
- *** together ***
- *** - No Changes (except crunching) are made without ***
- *** MY permission!!! ***
- *** ***
- ******************************************************************************
- *** ***
- *** ***
- *** Come to: D.E.R. Computer-Club ***
- *** Stiegerg. 5/1 ***
- *** 1150 VIENNA ***
- *** AUSTRIA ***
- *** ***
- *** ***
- ******************************************************************************
-
- Before you use Player please read this:
- ---------------------------------------
-
- I have worked almost 2╜ years on this code and i think it's a very nice
- program. So I have a little request! I don't want to earn any money with my
- Player, because I have written it for fun and for my own use,
- but please LET ME KNOW, IF YOU FIND SOME BUGS!
-
- If you really want to send me some money, then do it! I'll take it, and it
- makes no difference how much! Maybe I'm the first Freeware-Coder, who earns
- millions with his program. So help me being the first one and send only
- sums bejond one million US-Dollar!!
-
- If you have trouble with a module please sent me a disk with it!
- You'll get it back with a new version of the CD-Player!!
-
- After I've got my A2000 with A2630, Kick 2.0 and ECS, I've tried to fix the
- problems with Cache, Kick 2.0, Workbench 2.1 and all the other troubles with
- this fucking fast machine!!
-
- Version 1.1 is the first released Version. V1.0 was spread internal only!!
- But who knows?! Perhaps you have a copy of 1.0!?!
-
- Needed Hardware:
- ----------------
-
- Any Amiga, at least Kick 1.2 and a very good stereo amplifier!!!!
-
- Needed Software:
- ----------------
-
- Many Soundtracker-modules!!
- If you use MachIII please read the 'tactical hints using Player'!!!
-
- Short discription:
- ------------------
-
- D.E.R. ST-Player is a Soundtracker-Moduleplayer with some special features!
-
- - 'Fire and Forget'-System (you will see what I mean)
- - fantastic Channel-Analyser!
- - short code (written in 100% assembler)
- - Player makes an own Process!!!
- - Player is full multitasking-compatible (except allocation of audio-cannels!)
- - Player works with 1(and more)MByte chipmem! (Ok, that's a feature of Kick1.3!)
- - Player should work on 680x0 processor cards!!
- - plays Soundtracker V2.0-V2.6, Noisetracker V1.0-V2.0 and
- Protracker -V1.1B Modules
- - If the screen is in background Player needs no CPU-Time!(Except Playroutine!!)
- - full filtercontrol
- - Position- and Notecontrol
- - Volumecontrol
- - NonStop loading
- - programmable
- - also handles PP20- and FileImploder-files!!
- since V1.22 also XPK-files
- - Start from CLI and Workbench possible!!
- - (FOR EXPERIENCED USERS ONLY!!: Player is able to run objectmodules)
-
- Usage:
- ------
-
- STP [DIR-Name | Module-Name] [-m] [-sxxx] [-r] [-n] [-j] [-a] [?]
-
-
-
- Instruction:
- ============
-
- Start from CLI:
- ---------------
-
- Start Player with or without options. If no arguments are given, Player
- has following defaults:
-
- - Player searches the File ENV:PlayerDir. There you can save the directory
- where the modules are stored. If the file doesn't exist ->
- - default directory is 'ST-00:modules'
- - Player takes as much memory as he needs or he can catch.
- - the songs are played alphabetically (A-Z)
- - Player dosen't looks for 'mod.'-files only
- - Player loads the next song when the current is finished
- - The 'B'-Cmd(Position-Jmp) of ST is enabled
-
- Options:
- ? -> Shows helpscreen!!
-
- -m -> Player takes only files beginning with 'mod.' (not case-sensitive!!!)
-
- -sxxx -> Player uses only that amount of chipmem you have selected.
- ('xxx' means the amount in KByte!!!! (xxx*1024=amount in Bytes!))
- Songs longer than 'xxx'-KByte won't be loaded.
-
- -r -> Player will randomize the sequence.
-
- -j -> disables the Position-Jump command from ST.
- (Very nice option for songs with a endless loop)
-
- -n -> Player tries to load the next song if the current has 3 patterns
- left to play. It only works if you have enough Fast-Mem!!
-
- -d -> Switches the Mode-Button to On-position
-
- since V1.1:
- -f -> Switches Auto-Fade On
-
-
- You can start Player also with a filename. Then Player switches 'Repeat' on and
- disables the 'Prev' and 'Next'-gadgets!!!
-
-
-
- Start from Workbench:
- ---------------------
-
- You can define a tooltype called 'SONGDIR'. Player loads all songs in this
- directory!!!
- 1. Click the Player-Icon once
- 2. Select 'Info' in the Workbench-Menu
- 3. Click on 'ADD' in the 'TOOL TYPES'-Bar
- 4. Type 'SONGDIR=' and the full directory-name you want. e.g.:'dh1:modules'
- 'modules' only is not enough!!!!
- 5. Now click on 'save'
- 6. click the Player-Icon once more and enjoy the music!!!
-
- If you didn't spezify a SONGDIR-Tooltype, Player searches also for the
- 'ENV:PlayerDir'-File. If available he uses it automatically!
-
- I've included some other Tooltypes, too!! Defaults in ().
-
- RANDOM -> ON/(OFF); e.g.:'RANDOM=ON';
- ANALYZER -> (ON)/OFF;
- NONSTOP -> ON/(OFF);
- NOPOSJMP -> ON/(OFF);
- MODONLY -> ON/(OFF);
-
- MAXCHIP : sets maximum usage of CHIP-RAM!!
- e.g.:'MAXCHIP=200' -> use 200K maximum
-
- since V1.1:
- AUTOFADE -> ON/(OFF);
-
-
- While Player is running:
- ------------------------
-
- If no ENV-File and no Dir-name was given, you first must turn the Player on!!
- Then Player asks you for a directory-path and reads this directory.
- Since V1.1 I use the ASL-Request (Kick 2.0 only)
-
- Now Player loads the first module. (Window shows 'loading Song...')
-
- Then Player starts playing.......
-
- Now you have the following possibilities:
-
- Filter-control:
- ---------------
- These are the two switches on the right side from the Volume-control.
-
- On Auto <- Function if Switch is pressed
- Switch -> ++ || ++ <- Switch
- Off Manual <- Function if Switch is released
- ^
- Lamp
-
- In the 'Manual'-position (default) the 'E'-command from Soundtracker is
- ignored (but internal stored!!) and the Filter is set by the on/off-switch.
-
- If switched to 'Auto' the filter is set as given from the last ST-command.
- The other switch is now disabled and the filtercontrol is given back to the
- playroutine!!
-
- Position- and Note-control:
- ---------------------------
- Below the display you can notice two pairs of gadgets. ( < > )
- The left pair controls the position and the right pair controls the note.
- The position-gadgets have a little delay!!
- Try it and you will know how to use them.
-
- Volume-control:
- ----------------
- With the proportinal gadget you can control the volume.
-
- Song-control:
- --------------
- On the right side of the Player are four gadgets.
- |<,>| : Load next,previous song in sequence.
- Stop : Will stop playing. Now you can try to open the Player.
- Play : Play/Pause toggle!
-
- Below the display you notice two other switches:
-
- RepS : Repeat the song. As long as Repeat is highlighted in the display
- Player repeats the song.
- Select : Klick on it. Now you can see a '>' in front of the current song.
- Use the |< and >| gadgets to select a song.
- Since V1.1 this buttons are repeated in this case!
- If you have found the right name press the play-gadget and Player
- reads the song at once.
-
-
- Sequence-control:
- ------------------
- Player is full programmable.
-
- Press the "Prog"-gadget
- You are now in the Program-Mode. (shown in the display!!)
- Choose a song with the |< and >| gadgets.
- Now you have the following possibilities:
- 'Prog' : Toggles between programmed and cleared-status.
- stored in the sequence -> you see 'xx P'<- Nr. in the sequence
- cleared -> ' C'
- 'Select': Select all songs
- 'Random': randomize the current sequence
- 'Stop' : Clear the program and cancel the Program-Mode
- 'Play' : Start playing with the first song in sequence
-
- Random (V1.1):
- --------------
- Random is now available in normal play-mode.
- Simply press the RANDOM-Button and a program will be initialised!
-
-
- Auto-Fade (V1.1):
- -----------------
- This means, player fades the Volume on the last Pattern to zero.
- This is usefull, if an endless song is played!
-
-
- How to change directory:
- ------------------------
- Press Stop and then Open (on the disc-drawer)
- Now Player asks again which directory you want!!
-
- V1.1: If your machine works under Kickstart 2.0, you can make this with the
- ASL-Requester!
-
- How to use the Analyser:
- ------------------------
- There are four buttons!!
-
- ++ <- Mode
-
- ++ <- Analyser On/Off
-
- ++ <- VU-Meter On/Off
-
- ++++ <- Power-Switch
-
- Mode: I calculate which part of a sample is played each vertical blank.
- Each of the 4 windows shows 40 values of the actual part.
- The parts are often larger then 40 bytes and so i've found two
- ways to show them
- Released Button:
- I show the first 40 bytes of the actual part then i add the
- length of the remaining part.
- (Good to display high frequences!)
- Pressed Button:
- I calculate the length of the part diveded by 40. Now I show
- the first byte then a add the result of the upper expression.
- Then i show the next byte and so on...
- (Good to display low frequences!)
-
-
- Information for musicians:
- --------------------------
-
- I have included the information-system from IntuiTracker!!
- You can use the samplenames for messages.
- Each message (samplename) starting with '#' is displayed.
- Player stops at the first samplename which begins not with '#'!!
-
-
- Now some tactical hints using Player:
- -------------------------------------
-
- Player checks each file if it's a ST-Module.
- It's possible (0.0001%) that the check-routine failes and he tries to play
- a file which is not a ST-Modules! Please remove this file from your
- directory for safe usage!!
-
- Using powerpacked Files requires the PowerPacker.library in libs: !!!
-
- If you have only 512KB ChipMem use the -s option (MAXCHIP) to leave free Mem!
- e.g.: -s200 (I've always used this one, but now I've 1MB-Chip!!)
-
- Player always allocates the size of the largest modules, because there are
- many troubles always freeing a block and allocating the next one.
- Memory get's more and more fragmented, until Player is not longer able
- to allocate the songmem!! I think this solution is better for longtime
- usage and always remember Amigas with fewer then 1MB-Chipmem are ...
- (Try Intuitracker, he uses the other way. After about 10 Songs it's over!!)
-
- If you are running MACHIII V3.0 get a version V3.1 or higher, cause of a
- major bug in V3.0. Every time you will run Player while MACHIII is running,
- your machine will stop every activity without a guru!!
- First I've thought that it was my fault, but after it works with V3.1 ...
-
- Player needs much time in his VB-interuptroutine. It's possible that you get
- in trouble running other programms using VB-Int's too. (I haven't recognized
- any problems of this nature, but it's possible!!).
-
-
-
- AND NOW SOME HINTS FOR VERY EXPERIENCED USERS ONLY!
- ---------------------------------------------------
-
- Player is able to run objectmodules! But take care, it's up to the module
- to work with Player!!!
- You ask why? There are many other good soundprograms available on AMIGA
- (for example SoundFX,TFMX..). If you got an executeable file which playes the
- song rename it into 'run.???????'. When Player recognizes such a file
- he tries to load it with 'loadseg()' and jumps directly into it's code!!
- Now it's your problem how you stop playing and return to Player!
-
- There is another problem with this feature!
- I have to give back all my memory starting the Obj-Mod.
- And after all I must get it back!! Do you know what I mean?!?!
- No! It's quiet simple!! It's possible that there isn't enough memory left
- after this action! Player will then quit playing!!!
- That's why I'm always allocating the lenght of the largest Module!!!!
- Because that's the only way to be sure not running out of memory!
- So please hold your memoryconsumtion low (use -s option. Usually I use -s200!!)
-
- I have found a new problem since Player makes an own precess!!!
- Some playroutines test if the process is started from CLI. If not they wait
- for a WB-Message!!! It's on you to remove this part of the code!!
- A little hint: look out for a FindTask(0L) (sub.l a1,a1; jsr -294(a6))
- then look if the programm tests 172(a?) of the process-structure.
- Remove exactly this test! But be careful. The code must always go the way
- it goes started from CLI!
-
- But after all that troubleshooting I have to say you: I did it!!!
-
-
- Informations about the Programm:
- --------------------------------
-
- Start of coding: April 1990
- SourceCode: 130kB - pure assembler-source (~6500 Lines)
- ObjectCode: 32kB
- Assembler: ASM-One (in the beginning Masterseka 1.80)
- GFX: 45kB - 3 Planes,Hires(640*170) (also pixled by me)
-
-
- Warning:
- --------
-
- I give no garantees using Player.
- System crashes and other unkown bugs are possible!!
- Use Player on your own risk!!!
-
- Player only reads data! It's impossible that Player
- destroys data on a Disk or HD. (only in your RAM, HeHeHe!!)
-
- All my friends are using Player since Summer 1990 with their HD and
- they have no problems!!
-
- But nobody is perfect!! And my name is certainly not 'Nobody'!
- So please let me know all the bugs you notice!!
-
- Last but not least thanks to:
-
- Michael Matzl, Reinhard Franz,
- Erwin Kloibhofer, Dieter Henkel
- and some members from the 'D.E.R. Computerclub'
-
- for testing, bugreports good ideas and very good friendship.
-
- Contacts:
- ---------
-
- write to: Wolfgang BREYHA
- Gro▀er Ring 42
- 1130 Vienna
- Austria (not Australia, no Kangaroos!!
- we are those with Lipizaner you know)
-
- E-Mail: ookummer@swwwnext.tuwien.ac.at
-
-